#ifndef OPTIONSDIALOG_H
#define OPTIONSDIALOG_H

#include <QDialog>
#include "ipchangedialog.h"

#include <QPushButton>
#include <QLineEdit>
#include <QLabel>
#include <QGridLayout>
#include <QCheckBox>
#include <QComboBox>
#include <QSettings>
#include <QDir>
#include <QGroupBox>

class OptionsDialog: public QDialog
{
    Q_OBJECT
    const int max_alarms;
    QCheckBox** enableCheckBox;
    QLineEdit** nameLineEdit;
    QComboBox** audioComboBox;
    QComboBox* errorComboBox;
    QPushButton* ipChangeButton;
    QLineEdit* hostIPLineEdit;
    QPushButton* okButton;
    QPushButton* cancelButton;
    QGridLayout* infoLayout;
    QHBoxLayout* mainLayout;
    QVBoxLayout* toolsLayout;
    QVBoxLayout* advancedLayout;
    QGroupBox* infoGroupBox;
    QGroupBox* advancedGroupBox;
    IPChangeDialog* ipChangeDialog;
    const QString audio_dir_name;

    void loadSettings();
public:
    OptionsDialog(QWidget* = 0);
signals:
    void ipChanged(QString,QString);
private slots:
    void changeIP();
    void saveAccepted();
    void saveRejected();
};

#endif // OPTIONSDIALOG_H
